package controlsystem;

import javax.persistence.Id;

import com.googlecode.objectify.annotation.Indexed;
import com.googlecode.objectify.annotation.Unindexed;



/**
 * course is een classe dat een vak definieerd.
 * @author Christiaan Leysen & Dario Incalza
 * 
 */
@Unindexed
public class CourseDescription{

	@Id
	private Long id;
	@Indexed
	private String name;
	private int studyPoints;
	private String prof;
	private String description;

	@SuppressWarnings("unused")
	private CourseDescription(){}; // een constructor zonder parameters moet bestaan om de class als entiteit te registreren voor objectify
	/**
	 * constructor
	 */
	public CourseDescription(String n,String profName,String desc,int sp)
	{ name=n;
	  prof=profName;
	  description=desc;
	  studyPoints=sp;
	}

	/**
	 * Accessor methode om het aantal studiepunten van het vak aan te roepen 
	 * @return een integer met het aantal studiepunten
	 */
	public int getStudyPoints()
	{
		 return studyPoints;
		
	}

	/**
	 * Accessor methode om de prof van het vak aan te roepen 
	 * @return een String met de prof
	 */
	public String getProf()
	{
		 return prof;
		
	}

	/**
	 * Accessor methode om de naam van het vak aan te roepen 
	 * @return een String met de naam van het vak
	 */
	public String getName()
	{
		 return name;
		
	}
	
	/**
	 * Accessor methode om de beschrijving van een vak aan te roepen
	 * @return een String met de beschrijving van het vak
	 */
	public String getDescription()
	{
		 return description;
		
	}

	/**
	 * @param een int met het aantal studiepunten
	 * Mutator methode om het aantal studiepunten van het vak te veranderen
	 * 
	 */
	public void setStudyPoints(int amount)
	{
		 studyPoints=amount;
		
	}

	/**
	 * @param een String met de naam van de prof
	 * Mutator methode om naam van de prof van het vak te veranderen
	 * 
	 */
	public void setProf( String name)
	{
		 prof=name;
		
	}

	/**
	 * @param een String met de naam van het vak
	 * Mutator methode om de naam van het vak te veranderen
	 * 
	 */
	public void setName(String name)
	{
		 this.name=name;
		
	}
	
	/**
	 * @param een string met de beschrijving
	 * mutator methode om de beschrijving van een vak te veranderen
	 * 
	 */
	public void setDescription(String text)
	{
		 description=text;
		
	}
	/**
	 * Vraag het object-id op.
	 * @return objectId
	 */
	public Long getId() {
		return id;
	}

}
